博客
关于我
一个车牌输入组件(vue)
阅读量:386 次
发布时间:2019-03-05

本文共 1900 字,大约阅读时间需要 6 分钟。

基于Vue的简单车牌输入组件实现

功能展示

该车牌输入组件支持多种车牌结构输入,包括省份代码、数字和其他特殊字符。组件采用点击输入的方式,支持字符的逐步输入和删除操作。

代码结构

## 事件处理```javascriptclickInput(type) { this.plateInput.input.type = type; this.plateInput.input.dialogVisible = true;}hiddenKeybord() { this.plateInput.input.dialogVisible = false;}enterWord() { this.plateInput.input.dialogVisible = false;}

方法实现

clickKeyboard(val) {  if (this.plateInput.input.type === 'p2' && parseInt(val) >= 0 && parseInt(val) <= 9) return;  this.methods('clickKeyboard', val);  this.methods('setPlateNumber');  this.methods('setDirectIssuedPlateNumber');}clickDelete() {  this.plateInput.input.value[this.plateInput.input.type] = undefined;  let nu = parseInt(this.plateInput.input.type.split('p')[1]) - 1;  if (nu >= 0) {    this.plateInput.input.value['p' + nu] = undefined;  }  let type = this.plateInput.input.type.split('p')[1];  if (type !== '1') {    this.plateInput.input.type = 'p' + (parseInt(type) - 1);  }}

数据模型

export let model = {  currentPlate: undefined,  plateInput: {    input: {      value: {        p1: '桂',        p2: 'B',        p3: 2,        p4: 2,        p5: 2,        p6: 2,        p7: 2,        p8: 0      },      type: 'p1',      dialogVisible: false    }  },  Keyboard: {    province: ['京', '津', '冀', '晋', '蒙', '辽', '吉', '黑', '沪', '苏', '浙', '皖', '闽', '赣', '鲁', '豫', '鄂', '湘', '粤', '桂', '琼', '渝', '川', '贵', '云', '藏', '陕', '甘', '青', '宁', '新', '台', '港', '澳', '使', '领', '警', '学'],    number: ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'J', 'K', 'L', 'M', 'N', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '学', '港', '澳']  }}

代码优化建议

  • 去除所有无效的空白div标签
  • 合并重复的样式表
  • 使用更优化的变量命名
  • 增加注释,提升代码可读性
  • 优化键盘事件响应逻辑
  • 增加字符验证功能,避免非法字符输入
  • 转载地址:http://ksgwz.baihongyu.com/

    你可能感兴趣的文章
    pytest+allure使用动态级别,参数化severity
    查看>>
    Pytest+Unittest+Git+Jenkins企业级CICD自动化测试平台建设方案
    查看>>
    Pytest+Yaml 数据驱动测试用例
    查看>>
    pytest-base-url插件之配置可选的项目系统URL
    查看>>
    pytest-xdist 进行多进程并发测试!
    查看>>
    pytest-xdist:远程多主机 - 分布式运行自动化测试
    查看>>
    Pytest中doctests的测试方法应用!
    查看>>
    Pytest中进行测试环境切换:pytest_addoption!
    查看>>
    pytest利用request fixture实现个性化测试需求详解
    查看>>
    pytest单元测试实战
    查看>>
    pytest单元测试框架
    查看>>
    Pytest参数详解 — 基于命令行模式
    查看>>
    pytorch cv2 plt transforms pause waitforbuttonpress一个完整的图片处理程序
    查看>>
    pytest学习和使用 - Pytest用例执行结果有哪几种状态?
    查看>>
    pytest实战技巧之参数化应用!
    查看>>
    Pytest实践:Python测试技术基础知识!
    查看>>
    Pytest接口自动化测试实战演练
    查看>>
    Pytest插件pytest-selenium-让自动化测试更简洁
    查看>>
    Pytest数据驱动怎么玩?实战教程来了!
    查看>>
    Pytest数据驱动怎么玩?实战教程来了!
    查看>>